package com.feemanage.mapper;

import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.feemanage.domain.ProjectType;
import com.feemanage.domain.bo.ProjectTypeExecuteBo;
import com.feemanage.domain.vo.ProjectBudgetExecuteVo;
import com.feemanage.domain.vo.ProjectExecuteVo;
import com.feemanage.domain.vo.ProjectTypeExecuteVo;
import com.feemanage.domain.vo.ProjectUnitExecuteVo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface ProjectTypeExecuteMapper  {

    List<ProjectTypeExecuteVo> selectPageList(@Param(Constants.WRAPPER) Wrapper<ProjectTypeExecuteBo> wrapper);

    IPage<ProjectUnitExecuteVo> selectUnitList(@Param("page") Page<ProjectUnitExecuteVo> page, @Param(Constants.WRAPPER) Wrapper<ProjectTypeExecuteBo> wrapper);

    List<ProjectUnitExecuteVo> selectUnitList(@Param(Constants.WRAPPER) Wrapper<ProjectTypeExecuteBo> wrapper);

    IPage<ProjectExecuteVo> selectprojectList(@Param("page") Page<ProjectExecuteVo> page, @Param(Constants.WRAPPER) Wrapper<ProjectTypeExecuteBo> wrapper);

    List<ProjectExecuteVo> selectprojectList(@Param(Constants.WRAPPER) Wrapper<ProjectTypeExecuteBo> wrapper);

    List<ProjectBudgetExecuteVo> selectbudgetList(@Param(Constants.WRAPPER) Wrapper<ProjectTypeExecuteBo> wrapper);

    List<ProjectType> selectProjectTypeList(@Param(Constants.WRAPPER) Wrapper<ProjectType> wrapper);

}
